◆NATDとは?

「NAT」とは「Network Address Translation」…ネットワークアドレス変換機能と呼びます。
そしてこの機能を持ったデーモンを「natd」と呼びます。


この「natd」を導入する事により、
FreeBSDにルーターに良く似た機能を持たせる」事になります。


なぜ「ルーターの機能」でなくて、「ルーターに良く似た機能」なのか?

それは、この機能はクライアントのIP変換を行って、外部(インターネット)に転送する機能だからです。
これは厳密には「ルーター」でなく「ゲートウェイ」の機能になります。

ローカルIPアドレスしか持たないクライアントPCが、この機能によってインターネットに出れるようにします。

一見するとルーターに良く似た機能です。
しかし、そこには「IPアドレス変換」といった作業が存在しており、
ルーターとは似て非なる機能となってます。


FreeBSDにおいて、これはIPファイアーウォール機能に大きく依存しており、
そのためにカーネルにIPファイアーウォール機能を持たせる必要がありました。

そしてもう1行あった[IPDIVERT]こそが、このnatdの機能です。


この機能はLinuxにおいて「IPマスカレード」と呼ばれている機能とほぼ同等のものです。


◆NATDの設定

ネットワーク環境の設定、そしてカーネル再構築を終えているのであれば、
設定しなければならない項目は基本的に[/etc/rc.conf]のみです。


[/etc/rc.conf]を開きます。
設定はどこでもいいですのが…とりあえずfirewallが動作しているか確認しておきます。
firewall_enable="YES"
firewall_type="OPEN"
この下に、
natd_enable="YES"
natd_interface="lnc0"
この2行を書き込んで自鯖を再起動です。

この時、[natd_interface]に指定するのはWAN側のインターフェイスである事に注意してください。

サーバーのマシン構成によっては指定するドライバが変わります。
プロバイダのモデムと繋いでいるのであれば、
そのDHCPを使用しているモデム側…インターネット側のインターフェイスを指定してください。


最後に[/etc/rc.conf]に
gateway_enable="YES"
この項目をあるのを確認して下さい。


この合計5行が、natdを動作させるのに必要最低限の項目となります。

これらの設定と確認を終えたら、保存して再起動をしてください。


これだけで、もうあなたの自鯖はNATルーターとして動作する事となります。


◆クライアントからの動作確認

さて、クライアント側から動作を確認しましょう。


…ところで、ネームサーバーのIPアドレスがいまだに分かりませんよね…(汗)。


ここでは、自鯖に設定されている(プロバイダ側からDHCPで受け取っている)
ネームサーバーを使用したいと思います。


このネームサーバーの情報はFreeBSDでは
[/etc/resolv.conf]というファイルに書き込まれています。

おもむろにこのファイルの内容を確認します。
Server# less /etc/resolv.conf

nameserver xxx.xxx.xxx.xxx
nameserver xxx.xxx.xxx.xxx
場合によっては[search]とか色々上にあると思いますが、それは無視して結構です。

必要な情報は[nameserver]の情報だけです。
ここに設定されているIPアドレスが、ネームサーバーのアドレスになります。

2つ以上ネームサーバーがある場合、
上が「プライマリネームサーバー」、下が「セカンダリネームサーバー」です。

もしこのプライマリネームサーバーに異常が起こって停止してしまった場合、
予備として用意されているセカンダリネームサーバーを見に行きます。


なので、今回はプライマリネームサーバーの情報さえあれば大丈夫だと思われます。
このIPアドレスをメモしておいてください。
念のためというのであれば、セカンダリのIPアドレスもメモっておきましょう。


そしてWindowsのTCP/IPネットワーク設定時に、
空白だった(もしくは自鯖のIP)ネームサーバーの項目にこれを登録、
設定を有効にします。


そして、どこでもいいですので、ブラウザでお気に入りのHomePageを見に行ってください。


…ちゃんと表示されましたか?


表示されたのであれば、これからはもうこの自鯖はルーターとして動作している事になります。

お疲れ様でした。


次は、望むのであれば、インターネットサーバーの設定です。


その前に、色々と寄り道してみるのもいいかも知れません…。


◆まとめ

最後に、FreeBSDにおける、NATルーター作成の手順のおさらいをしておきます。


・FreeBSDのインストール…当然ですね(汗)。


・ネットワークの設定と確認…先にやっておいた方がいいです。トラブル時に解決が多少なりとも楽になります。

[/etc/rc.conf]に以下の2行があるか確認
ifconfig_lnc0="DHCP"   #インターネット(モデム側)です
ifconfig_fxp0="inet 192.168.1.254 netmask 255.255.255.0" #ローカルネットワーク側です
何度も説明してますが、いきなりこのページを見た方のためにもう一度。
この[lnc0][fxp0]の文字は、自分の環境に合わせて設定してください。


・カーネルに[IPFIREWALL]と[IPDIVERT]の機能を組み込んで再構築、インストール
options         IPFIREWALL
options         IPDIVERT


・[/etc/rc.conf]に以下の5行の追加、もしくは確認
gateway_enable="YES"
firewall_enable="YES"
firewall_type="OPEN"

natd_enable="YES"
natd_interface="lnc0"     #インターネット側インターフェイスですよ!


以上です。


これで、クライアントPCからインターネット接続が可能になったと思います。


願わくば楽しいFreeBSDライフを!



[一つ上に戻る]

テレワークならECナビ Yahoo 楽天 LINEがデータ消費ゼロで月額500円〜!
無料ホームページ 無料のクレジットカード 海外格安航空券 海外旅行保険が無料! 海外ホテル